﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using ProyectoBastanteo.Dominio;

namespace ProyectoBastanteo.Negocio
{
    interface IAdministracionService
    {
        #region Operaciones de negocio
        Cliente RegistrarCliente(string ruc, string razonSocial, int tipoCodigo,
            DateTime inicioOperaciones,  int empleados);
        Representante RegistrarRepresentante(int codigo, string nombrep, string tidoprep, string nudorep, 
            string cargrep, string gruprep);
        TipoEmpresa RegistrarTipoEmpresa(string Abreviacion);

        #endregion

        #region Métodos de soporte para entidad Cliente
        Cliente ModificarCliente(Cliente ClienteAModificar);
        void EliminarCliente(Cliente ClienteAEliminar);
        Cliente ObtenerCliente(int codigo);
        ICollection<Cliente> ListarClientes();
        #endregion

        #region Métodos de soporte para entidad Representante


        Representante ModificarRepresentante(Representante RepresentanteAModificar);
        void EliminarRepresentante(Representante RepresentanteAEliminar);
        Representante ObtenerRepresentante(string nudorep);
        ICollection<Representante> ListarRepresentantes();
        #endregion


        #region Métodos de soporte para entidad TipoEmpresa

        TipoEmpresa ModificarTipoEmpresa(TipoEmpresa TipoEmpresaAModificar);
        void EliminarTipoEmpresa(TipoEmpresa TipoEmpresaAEliminar);
        TipoEmpresa ObtenerTipoEmpresa(int codigo);
        ICollection<TipoEmpresa> ListarTiposEmpresa();
         
        #endregion

    }
}
